package org.hwua.production.domain;

import java.util.Date;

/**
 * 员工信息
 * @author hwua
 *
 */
public class Employee implements java.io.Serializable {
	private static final long serialVersionUID = 1L;
	
	private String empId;//员工编号
	
    private String empName;//员工姓名

    private String sex;//性别

    private String idCode;//身份证号

    private Date birthday;//生日

    private Date joinDate;//入职日期

    private String status;//员工状态

    private String education;//学历

    private String degree;//学位

    private String major;//专业

    private String graduateSchool;//毕业院校

    private String educationForm;//受教育形式

    private Department department;//所属部门

	public String getEmpId() {
		return empId;
	}

	public void setEmpId(String empId) {
		this.empId = empId;
	}

	public String getEmpName() {
		return empName;
	}

	public void setEmpName(String empName) {
		this.empName = empName;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getIdCode() {
		return idCode;
	}

	public void setIdCode(String idCode) {
		this.idCode = idCode;
	}

	public Date getBirthday() {
		return birthday;
	}

	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}

	public Date getJoinDate() {
		return joinDate;
	}

	public void setJoinDate(Date joinDate) {
		this.joinDate = joinDate;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getEducation() {
		return education;
	}

	public void setEducation(String education) {
		this.education = education;
	}

	public String getDegree() {
		return degree;
	}

	public void setDegree(String degree) {
		this.degree = degree;
	}

	public String getMajor() {
		return major;
	}

	public void setMajor(String major) {
		this.major = major;
	}

	public String getGraduateSchool() {
		return graduateSchool;
	}

	public void setGraduateSchool(String graduateSchool) {
		this.graduateSchool = graduateSchool;
	}

	public String getEducationForm() {
		return educationForm;
	}

	public void setEducationForm(String educationForm) {
		this.educationForm = educationForm;
	}

	public Department getDepartment() {
		return department;
	}

	public void setDepartment(Department department) {
		this.department = department;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((empId == null) ? 0 : empId.hashCode());
		result = prime * result + ((empName == null) ? 0 : empName.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Employee other = (Employee) obj;
		if (empId == null) {
			if (other.empId != null)
				return false;
		} else if (!empId.equals(other.empId))
			return false;
		if (empName == null) {
			if (other.empName != null)
				return false;
		} else if (!empName.equals(other.empName))
			return false;
		return true;
	}

	@Override
	public String toString() {
		return "Employee [empId=" + empId + ", empName=" + empName + ", sex=" + sex + ", idCode=" + idCode
				+ ", birthday=" + birthday + ", joinDate=" + joinDate + ", status=" + status + ", education="
				+ education + ", degree=" + degree + ", major=" + major + ", graduateSchool=" + graduateSchool
				+ ", educationForm=" + educationForm + ", department=" + department + "]";
	}
	
}